//
// Created by zx208 on 2024/11/2.
//

#include "../../define.h"
#include <stdio.h>
#include <stdlib.h>

#ifndef _LINKEDQUEUE_BINARYTREE_H
#define _LINKEDQUEUE_BINARYTREE_H

typedef char BitreeElemType;

typedef struct BiNode{
    BitreeElemType data;
    struct BiNode *lchild, *rchild;
} BiNode, *BiTree;

typedef struct QueueNode{
    BiNode data;
    struct QueueNode *next;
} QueueNode;

typedef struct LinkedQueue{
    QueueNode *front; // front相当于链表的头指针
    QueueNode *rear; // rear指向整个链表的最后一个节点
} LinkedQueue;

Status InitQueue(LinkedQueue *Q);
Status Entry_LQ(LinkedQueue *Q, BiTree e);
Status Out_LQ(LinkedQueue *Q, BiTree e);
Status IsEmpty(LinkedQueue *Q);

#endif //_LINKEDQUEUE_BINARYTREE_H
